import requests
import time,pygame
from PIL import Image, ImageSequence
import cv2
import numpy
urk='https://xiaoapi.cn/API/lt_xiaoai.php?type=json&msg='
pygame.mixer.init()
pic_name = "./static/xiaomei.gif"
im = Image.open(pic_name)
def gif():
    im = Image.open(pic_name)
    for frame in ImageSequence.Iterator(im):  # 使用迭代器
        frame = frame.convert('RGB')
        cv2_frame = numpy.array(frame)
        show_frame = cv2.cvtColor(cv2_frame, cv2.COLOR_RGB2BGR)
        cv2.imshow(pic_name, show_frame)
        cv2.waitKey(10)  # 说话快慢  越大越慢


def getRequest(text):
    url = urk + text  #请求网址 API
    gu = requests.get(url) #请求的全部内容
    mp3_url = gu.json().get('data').get('tts')  # 语音网址
    gus = requests.get(mp3_url)
    guf = time.strftime("%Y%m%d%H%M%S", time.localtime())  # 用时间当文件名
    fl = './requestMp3/' + guf + '.mp3'
    with open(fl, 'wb') as f:
        f.write(gus.content)  # 将爬取语音保存下来w
    print('小爱:' + gu.json().get('data').get('txt'))  # 输出小爱回复文字(文字可以慢慢的出来，有科技感)
    pygame.mixer.music.load(fl)
    pygame.mixer.music.play(1)  # 播放语音
    while pygame.mixer.music.get_busy():  # 在音频播放为完成之前不退出程序(也可以使用多线程异步的形式边打字，边播放音频)
        gif()
        pass
    gus.close()
    gu.close()  # 关闭

